<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="https://www.w3.org/1999/xhtml" lang="zh-CN" xml:lang="zh-CN">
<head><meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8" />
    <title>iv. 对宿主系统的要求</title>
    <link rel="stylesheet" href="../stylesheets/lfs.css" type="text/css" />
    <link rel="stylesheet" href="../stylesheets/lfs-print.css" type="text/css" media="print" />
<script> var _hmt = _hmt || []; (function() { var hm = document.createElement("script"); hm.src = "https://hm.baidu.com/hm.js?d286c55b63a3c54a1e43d10d4c203e75"; var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(hm, s); })(); </script>
</head>
  <body id="lfs" class="6.2">
    <div class="navheader">
      <div class="headertitles">
        <h4>Linux From Scratch - 版本 6.2</h4>
        <h3>序言</h3>
      </div>
      <ul class="headerlinks">
        <li class="prev">
          <a accesskey="p" href="prerequisites.html" title="先决条件">后退</a>
          <p>先决条件</p>
        </li>
        <li class="next">
          <a accesskey="n" href="typography.html" title="排版约定">前进</a>
          <p>排版约定</p>
        </li>
        <li class="up"><a accesskey="u" href="preface.html" title="序言">上一级</a></li>
        <li class="home"><a accesskey="h" href="../index.html" title="Linux From Scratch - 版本 6.2">首页</a></li>
      </ul>
    </div>
    <div class="sect1">
      <div class="titlepage">
        <h1 class="sect1">iv. 对宿主系统的要求</h1>
      </div>
      <p>你的宿主系统应当安装了下列软件，并且不低于指定的版本号。这些要求对于大部分现在的 Linux 发行版来说不成问题。另外要注意的是许多发行版会将软件的头文件额外单独打包存放，常见的名称为"<span class="quote">&lt;包名称&gt;-devel</span>"或"<span class="quote">&lt;包名称&gt;-dev</span>"。如果你的发行版提供了这些包请务必确保已经安装了它们。</p>
      <div class="itemizedlist">
        <ul compact="compact">
          <li>
            <p><span class="strong"><strong>Bash-2.05a</strong></span></p>
          </li>
          <li>
            <p><span class="strong"><strong>Binutils-2.12</strong></span> (不推荐使用大于 2.16.1 的版本，因为尚未经过测试)</p>
          </li>
          <li>
            <p><span class="strong"><strong>Bzip2-1.0.2</strong></span></p>
          </li>
          <li>
            <p><span class="strong"><strong>Coreutils-5.0</strong></span> (或者 Sh-Utils-2.0, Textutils-2.0, 和 Fileutils-4.1)</p>
          </li>
          <li>
            <p><span class="strong"><strong>Diffutils-2.8</strong></span></p>
          </li>
          <li>
            <p><span class="strong"><strong>Findutils-4.1.20</strong></span></p>
          </li>
          <li>
            <p><span class="strong"><strong>Gawk-3.0</strong></span></p>
          </li>
          <li>
            <p><span class="strong"><strong>Gcc-2.95.3</strong></span> (不推荐使用大于 4.0.3 的版本，因为尚未经过测试)</p>
          </li>
          <li>
            <p><span class="strong"><strong>Glibc-2.2.5</strong></span> (不推荐使用大于 2.3.6 的版本，因为尚未经过测试)</p>
          </li>
          <li>
            <p><span class="strong"><strong>Grep-2.5</strong></span></p>
          </li>
          <li>
            <p><span class="strong"><strong>Gzip-1.2.4</strong></span></p>
          </li>
          <li>
            <p><span class="strong"><strong>Linux Kernel-2.6.x</strong></span> (必须是 GCC-3.0 以上版本编译的)</p>
            <p>对内核版本的这两个要求是因为：如果宿主系统的内核版本低于 2.6.2 或者不是用 GCC-3.0 以上版本编译的，那么 Binutils 将不能支持线程本地存储(thread-local storage)，同时 NPTL(本地 POSIX 线程库)的测试程序也会出现段错误。</p>
            <p>如果宿主系统的内核版本低于 2.6.2 或者不是用 GCC-3.0 以上版本编译的，您需要安装一个符合上述条件的新内核，然后用该新内核启动宿主系统。有两种方法可以解决这个问题。第一，如果你的 Linux 供应商提供这样的内核，你可以直接安装它；第二，如果你的 Linux 供应商不提供这样的内核或者你不想安装他们提供的内核，你可以自己编译一个内核。关于编译内核和配置引导管理器(假定宿主系统使用 GRUB)的指导，请查看<a href="../chapter08/chapter08.html">第八章</a>。</p>
          </li>
          <li>
            <p><span class="strong"><strong>Make-3.79.1</strong></span></p>
          </li>
          <li>
            <p><span class="strong"><strong>Patch-2.5.4</strong></span></p>
          </li>
          <li>
            <p><span class="strong"><strong>Sed-3.0.2</strong></span></p>
          </li>
          <li>
            <p><span class="strong"><strong>Tar-1.14</strong></span></p>
          </li>
        </ul>
      </div>
      <p>为了确定宿主系统是否满足上述要求，运行下面的命令进行查看：</p>
      <pre class="userinput"><kbd class="command">cat &gt; version-check.sh &lt;&lt; "EOF"
<tt class="literal">#!/bin/bash

# Simple script to list version numbers of critical development tools

bash --version | head -n1 | cut -d" " -f2-4
echo -n "Binutils: "; ld --version | head -n1 | cut -d" " -f3-4
bzip2 --version 2&gt;&amp;1 &lt; /dev/null | head -n1 | cut -d" " -f1,6-8
echo -n "Coreutils: "; chown --version | head -n1 | cut -d")" -f2
diff --version | head -n1
find --version | head -n1
gawk --version | head -n1
gcc --version | head -n1
/lib/libc.so.6 | head -n1 | cut -d" " -f1-7
grep --version | head -n1
gzip --version | head -n1
cat /proc/version | head -n1 | cut -d" " -f1-3,5-7
make --version | head -n1
patch --version | head -n1
sed --version | head -n1
tar --version | head -n1</tt>

EOF

bash version-check.sh</kbd></pre>
    </div>
    <div class="navfooter">
      <ul>
        <li class="prev">
          <a accesskey="p" href="prerequisites.html" title="先决条件">后退</a>
          <p>先决条件</p>
        </li>
        <li class="next">
          <a accesskey="n" href="typography.html" title="排版约定">前进</a>
          <p>排版约定</p>
        </li>
        <li class="up"><a accesskey="u" href="preface.html" title="序言">上一级</a></li>
        <li class="home"><a accesskey="h" href="../index.html" title="Linux From Scratch - 版本 6.2">首页</a>.
        </li>
      </ul>
    </div>
</body></html>
